package com.ymx.darling.mapper.proxy;

import com.ymx.darling.session.Session;

/**
 * Mapper自定义方法执行器
 * @author 爱Java的小于
 */
public interface MethodInvoker {
    /**
     * 执行mapper目标方法的代理方法
     * @param session 目标代理实例
     * @param sqlStatementId sql语句id
     * @param param 方法参数
     * @return Object 执行结果
     * @throws Throwable 可能会抛出此异常
     */
    Object invoke(Session session, String sqlStatementId, Object[] param) throws Throwable;
}
